package model.building;

import model.City;
import model.Ressources;
import model.util.Vector3D;
import model.util.Object3D;
import model.util.Box3D;

public class Hospital extends Service {
    
    /*
     * Constructeurs
     */
    public Hospital(City city, Vector3D position) { 
        this(city, new Box3D(m_shape, position), new Activity(m_defaultActivity));
    }

    public Hospital(City city, Object3D object3d, Activity activity) {
        super(city, object3d,activity);
    }


    /*
     * Accesseurs
     */
    public String getName() { return "Hospital"; }
    public Box3D.Shape3D getShape3D() { return getShape(); }
     public double getBaseDestructionCost() { return 10000.0; }
    public double getMaintainCost() { return 15.0; }

    /*
     * Variables de classe
     */
    private static final Box3D.Shape3D m_shape = new Box3D.Shape3D(new Vector3D(83.0, 80.0, 2.0));
    private static final Activity m_defaultActivity = new Activity(200,15);

    /** Methodes de classe */
    public static Box3D.Shape3D getShape() {
        return m_shape;
    }
    public static double getConstructionCost() { return 13000.0; }
    public static Activity getDefaultActivity() { return m_defaultActivity; }
    
    /*
     * Classe internes
     */
    public static class Activity extends Service.Activity {
    
        public Activity(double personLimit, double dollars) {
            super(personLimit,dollars);
        }
        
        public Activity(Activity a) { super(a); }
    
    }
}
